Wang Haihua
🍈 🍉🍊 🍋 🍌
Monte Carlo方法的基础是概率论中的大数定理和中心极限定理,为了说明Monte Carlo方法的精度,我们给出中心极限定理。
定理 1 (中心极限定理) 设 $\xi_{1}, \xi_{2}, \cdots, \xi_{n}, \cdots$ 为一独立同分布的随机变 量序列, 数学期望为 $E \xi_{i}=a$, 方差 $D \xi_{i}=\sigma^{2}$, 则当 $n \rightarrow \infty$ 时, $$ \boldsymbol{P}\left\{\frac{\frac{1}{n} \sum_{i=1}^{n} \xi_{i}-a}{\frac{\sigma}{\sqrt{n}}}<x_{\alpha}\right\} \rightarrow \frac{1}{\sqrt{2 \pi}} \int_{-\infty}^{x_{\alpha}} e^{-\frac{x^{2}}{2}} d x . $$
利用中心极限定理, 当 $n \rightarrow \infty$ 时, 还可得到 $$ P\left\{\left|\frac{1}{n} \sum_{i=1}^{n} \xi_{i}-a\right|<\frac{x_{\alpha / 2} \sigma}{\sqrt{n}}\right\} \rightarrow \frac{2}{\sqrt{2 \pi}} \int_{0}^{x_{\alpha / 2}} e^{-\frac{x^{2}}{2}} d x . $$
若记 $$ \frac{2}{\sqrt{2 \pi}} \int_{0}^{x_{\alpha / 2}} e^{-\frac{x^{2}}{2}} d x=1-\alpha, $$ 那就是说, 当 $n$ 很大时, 不等式 $$ \left|\frac{1}{n} \sum_{i=1}^{n} \xi_{i}-a\right|<\frac{x_{\alpha / 2} \sigma}{\sqrt{n}} $$ 成立的概率为 $1-\alpha$ 。通常将 $\alpha$ 称为显著性水平, $1-\alpha$ 就是置信水平。 $x_{\alpha / 2}$ 为 标准正态分布的上 $\alpha / 2$ 分位数, $\alpha$ 和 $x_{\alpha}$ 的关系可以在正态分布表中查到。
从上式可以看到, 随机变量的算术平均值 $\frac{1}{n} \sum_{i=1}^{n} \xi_{i}$ 依概率收敛到 $a$ 的 阶为 $O\left(\frac{1}{\sqrt{n}}\right)$ 。当 $\alpha=0.05$ 时, 误差 $\varepsilon=1.96 \sigma / \sqrt{n}$ 称为概率误差。从这里可以看 出, Monte Carlo 方法收敛的阶很低, 收敛速度很慢, 误差 $\varepsilon$ 由 $\sigma$ 和 $\sqrt{n}$ 决定。 在固定 $\sigma$ 的情况下, 要提高 1 位精度, 就要增加 100 倍试验次数。相反, 若 $\sigma$ 减少 10 倍, 就可以减少 100 倍工作量。因此, 控制方差是应用 Monte Carlo 方法中很重要的一点。
用 Monte Carlo 方法处理的问题可以分为两类。
一类是随机性问题。对于这一类实际问题,通常采用直接模拟方法。首先, 必须根据实际问题的规律, 建立一个概率模型 (随机向量或随机过程), 然后用计算机进行抽样试验, 从而得出对应于这一实际问题的随机变量 $Y=g\left(X_{1}, X_{2}, \cdots, X_{m}\right)$ 的分布。假定随机变量 $Y$ 是我们的研究对象, 它是 $m$ 个 相互独立的随机变量 $X_{1}, X_{2}, \cdots, X_{m}$ 的函数, 如果 $X_{1}, X_{2}, \cdots, X_{m}$ 的概率密度函数分别为 $f_{1}\left(x_{1}\right), f_{2}\left(x_{2}\right), \cdots, f_{m}\left(x_{m}\right)$, 则用 Monte Carlo 方法计算的基本步骤是:
在计算机上用随机抽样的方法从 $f_{1}\left(x_{1}\right)$ 中抽样, 产生随机变量 $X_{1}$ 的一个 值 $x_{1}^{\prime}$, 从 $f_{2}\left(x_{2}\right)$ 中抽样得 $x_{2}^{\prime}, \cdots$, 从 $f_{m}\left(x_{m}\right)$ 中抽样得 $x_{m}^{\prime}$, 由 $x_{1}^{\prime}, x_{2}^{\prime}, \cdots, x_{m}^{\prime}$ 计算 得到 $Y$ 的一个值 $y_{1}=g\left(x_{1}^{\prime}, x_{2}^{\prime}, \cdots, x_{m}^{\prime}\right)$, 显然 $y_{1}$ 是从 $Y$ 分布中抽样得到的一个数 值, 重复上述步骤 $N$ 次, 可得随机变量 $Y$ 的 $N$ 个样本值 $\left(y_{1}, y_{2}, \cdots, y_{N}\right)$, 用这 样的样本分布来近似 $Y$ 的分布, 由此可计算出这些量的统计值。
另一类是确定性问题。在解决确定性问题时, 首先要建立一个有关的概 率统计模型, 使所求的解就是这个模型的概率分布或数学期望, 然后对这个 模型作随机抽样, 最后用其算术平均值作为所求解的近似值。根据前面对误 差的讨论可以看出, 必须尽量改进模型, 以便减少方差和降低费用, 以提高 计算效率。